clear; clc; close all;

% 固定参数
k   = 1.77;
a   = -1;
b   = 0.1;
x0  = 0.5;
q0  = 0.5;

N       = 5000;    % 总迭代步数
discard = 100;     % 舍弃前 500 步
keep    = N - discard;  % 用于绘图的步数

% 生成两组不同的 u
u_chaos = -1.5;   % (c) 混沌
u_hyper = 0.1;    % (d) 超混沌

% 分别迭代系统，得到 (x,q) 序列
[xC, qC] = iterate_nhmm(u_chaos, k, a, b, x0, q0, N);
[xH, qH] = iterate_nhmm(u_hyper, k, a, b, x0, q0, N);

% 仅取后 keep 步，用于绘图
xC_plot = xC(end-keep+1 : end);
qC_plot = qC(end-keep+1 : end);
xH_plot = xH(end-keep+1 : end);
qH_plot = qH(end-keep+1 : end);

figure('Position',[100,100,700,300]);

% (c) 混沌吸引子 (u = -1.5)
subplot(1,2,1);
plot(xC_plot, qC_plot, '.', 'MarkerSize', 3);
xlabel('x');
ylabel('q');
title('混沌吸引子 (u = -1.5)');
grid on; box on;
% xlim([-80, 80]); ylim([-8, 4]);

% (d) 超混沌吸引子 (u = 0.1)
subplot(1,2,2);
plot(xH_plot, qH_plot, '.', 'MarkerSize', 3);
xlabel('x');
ylabel('q');
title('超混沌吸引子 (u = 0.1)');
grid on; box on;
% xlim([-80, 80]); ylim([-8, 4]);


